package battleco

import "wails/schema/enums/battleenum"

// @alias 消耗
type S消耗 struct {
	// @alias 资源
	Z资源 map[battleenum.Z游戏资源类型]float64
	// @alias 活力
	// 单位施放该技能必须消耗的活力值 。
	H活力 map[battleenum.H活力类型]float64
	// @alias 活力系数
	// 单位施放技能必须消耗的活力值系数。
	H活力系数 map[battleenum.H活力类型]float64
	// @alias 消耗项
	L消耗项 map[string]interface{} `_type:"消耗项"`
}

// @alias 消耗系数
type S消耗系数 struct {
	// @alias 资源
	Z资源 map[battleenum.Z游戏资源类型]float64
	// @alias 活力
	H活力 map[battleenum.H活力类型]float64
	// @alias 消耗项
	X消耗项 map[string]float64
}

// @schema_export --ident=schema --json --_type=消耗项 --消息来源=0
// @schema_go
// @cache_go
// @cache_ts
// @alias 消耗充能
type S消耗充能 struct {
	// @alias 充能
	C充能 string `link:"充能"`
	// @alias 使用量
	// 使用会消耗的充能数
	M使用量 float64
}

// @schema_export --ident=schema --json --_type=消耗项 --消息来源=0
// @schema_go
// @cache_go
// @cache_ts
// @alias 消耗冷却
type S消耗冷却 struct {
	// @alias 冷却
	L冷却 string `link:"冷却"`

	// @alias 冷却时间
	L冷却时间 float64
}

// 需要设置单位的物品卡包
// @schema_export --ident=schema --json --_type=消耗项 --消息来源=0
// @schema_go
// @cache_go
// @cache_ts
// @alias 消耗卡片
type S消耗卡片 struct {
	// @alias 卡片
	K卡片 string `link:"卡片"`

	// @alias 数量
	S数量 int
}
